package com.xpxrule.dataobject.bo;

import com.xpxrule.constant.FieldType;
import com.xpxrule.constant.Operator;
import lombok.Data;
import com.xpxrule.dataobject.base.StructValue;
import lombok.EqualsAndHashCode;

/**
 * @version 1.0
 * @Author xiangpengxiang
 * @Date 2024/11/20 14:34
 * @注释
 */
@EqualsAndHashCode
@Data
public class RuleConditionItemBo {
    /**
     * 字段key
     */
    private String fieldKey;
    /**
     * 字段名称
     */
    private String fieldName;
    /**
     * 字段取值类型（基础数据类型:basicType、自定义数据类型:customType、常量:enumConstant）
     */
    private String fieldValueType;
    /**
     * 类型
     * fieldValueType为基础类型，type为long、integer等类型
     * fieldValueType为自定义数据类型，type为自定义数据类型最终类型（基础类型、枚举类型）
     * fieldValueType为常量，type为常量名称
     */
    private String type;
    /**
     * 字段取值类型
     */
    private FieldType fieldBasicType;
    /**
     * 操作符
     */
    private Operator operator;
    /**
     * 目标值
     */
    private StructValue targetValue;
}
